import 'dart:math';

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      // ThemeData 是flutter用于定义应用主题样式的类
      // 你可以通过它设置颜色、字体、按钮样式等全局风格。
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.red), // 主色
        brightness: Brightness.light, // 亮色主题
        fontFamily: 'Roboto', // 字体
        useMaterial3: true, // 建议开启Material3
        appBarTheme: const AppBarTheme(
          backgroundColor: Colors.red, // 背景色
          foregroundColor: Colors.black, // 字体颜色
        ),
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Flutter app'),
          //backgroundColor: Theme.of(context).colorScheme.primary, // 强制使用主题颜色
        ),
        body: MyHomePage(),
      ),
    );
  }
}

class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key});

  @override
  Widget build(BuildContext context) {
    /**
     * 页面上定义一个容器，宽度是屏幕的宽度，高度是宽度的一半
     * 
     * AspectRatio 是flutter用于设置子组件宽高比例的布局控件。
     * 通过aspectRatio属性，可以让子组件按照指定的宽高比例进行布局
     * 
     * 场景：常用于图片、视频等需要固定比例显示的场景
     */
    return AspectRatio(
      aspectRatio: 2 / 1,
      child: Container(color: Colors.blue),
    );
  }
}
